Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

WinCE: sqlclient exception

Îåêßíçóå áðü ôï ìÝëïò Ioannis P. Τελευταία δημοσίευση από το μέλος dimkasta στις 15-12-2005, 15:17. Υπάρχουν 8 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  09-12-2005, 17:01 7746

    Smile [:)] WinCE: sqlclient exception

    Γεια σας,

    Έχω φτιάξει μια μικρή εφαρμογή για ένα pocket pc 2003 που συνδέεται σε sql 2000 και  λειτουργεί μια χαρά. Τα βάσανα μου άρχισαν όταν προσπάθησα να τρέξω την εφαρμογή από ένα Windows CE 4.2. Τότε διαπίστωσα, μετά από πολύ ψάξιμο, οτι έπρεπε το collation του sql 2000 να είναι SQL_Latin1_General_CP1_CI_AS διαφορετικά λάμβανα μήνυμα PlatformNotSupported. Αλλάζοντας το collation κατάφερα να συνδεθώ στον sql 2000. Τώρα είμαι στο σημείο που μπορώ να εκτελέσω ερωτήματα που όμως δεν επιστρέφουν δεδομένα με Ελληνικούς χαρακτήρες. Αν τα δεδομένα έχουν Ελληνικά γράμματα το ερώτημα δεν εκτελείται και λαμβάνω μήνυμα σφάλματος. Στη Microsoft βρήκα το παρακάτω:

    ·                     ANSI data

    ANSI data is supported only for SQL_Latin1_General_CP1_CI_AS collations from an English-based device. All strings in the .NET Framework are Unicode. System.Data.SqlClient converts ANSI data in SQL Server to Unicode using the .NET Framework Encoding classes. Although the Encoding classes are supported in the .NET Compact Framework, not all code pages are.

    Also, System.Data.SqlClient cannot read from or write to an ANSI column if the code page for the column is not available on the Windows CE-based device. System.Data.SqlClient generates an error when the code page for an ANSI-to-Unicode conversion is not available.

    Δυστυχώς όμως στα Regional Settings του Windows CE δεν υπάρχει υποστήριξη για Ελληνικά.
    Έχει μήπως κάποιος καμιά καλή ιδέα για το τι πρέπει να κάνω;

    Ευχαριστώ!



  •  09-12-2005, 17:16 7747 σε απάντηση της 7746

    Απ: WinCE: sqlclient exception

    Θα πρέπει στη βάση σου να ορίζεις τις textual στήλες σαν nvarchar (Unicode) και όχι varchar (ANSI).


    Νατάσα Μανουσοπούλου
  •  09-12-2005, 23:00 7763 σε απάντηση της 7746

    Απ: WinCE: sqlclient exception

    Συγνώμη που δεν το ανέφερα αλλά αυτό το έχω κάνει αλλά χωρίς αποτέλεσμα.
    Υπάρχει κάποιος που να έχει χρησιμοποιήσει sqlclient σε CE 4.1 /4.2 και να μην αντιμετώπισε πρόβλημα με τα Ελληνικά;

    Ευχαριστώ.
  •  10-12-2005, 09:34 7792 σε απάντηση της 7746

    Απ: WinCE: sqlclient exception

    Καλημέρα,

    Σήμερα έφτιαξα ενα δοκιμαστικό πίνακα με μια στήλη nvarchar και διαπίστωσα οτι διαβαζε τα Ελληνικα κανονικά. Όμως οι στήλες από άλλους πίνακες που είχα αλλάξει σε nvarchar έχουν πρόβλημα. Οπότε είμαι εν μέρει εντάξει.

    Ευχαριστώ πολύ.
  •  10-12-2005, 12:32 7800 σε απάντηση της 7792

    Απ: WinCE: sqlclient exception

    Αν δεν θέλεις να πειράξεις το structure της βάσης σου,θα μπορούσες να χρησιμοποιήσεις την CONVERT() του SQL Server για να μετατρέψεις ένα varchar σε nvarchar κατα την διάρκεια των queries σου.

    Παναγιώτης Κεφαλίδης

    "Για να επιτύχεις, θα πρέπει το πάθος σου για την επιτυχία να είναι μεγαλύτερο απο τον φόβο σου για την αποτυχία"

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Παρακαλώ διαβάστε τους όρους χρήσης.
  •  11-12-2005, 10:52 7816 σε απάντηση της 7746

    Απ: WinCE: sqlclient exception

    Αν κάνω δηλαδή πχ. select convert(nvarchar(10), myvar) from mytable θα μου έρχονται τα αποτελέσματα σε Unicode μορφη;
  •  11-12-2005, 14:44 7818 σε απάντηση της 7746

    Απ: WinCE: sqlclient exception

    Αν κάνεις SELECT CONVERT(nvarchar(10),myvar) AS myvar FROM mytable, τότε ναι, θα στα κάνει convert απο ότι var είναι σε nvarchar αν αυτό επιτρέπεται/γίνεται (απο varchar σε nvarchar γίνεται).
    Παναγιώτης Κεφαλίδης

    "Για να επιτύχεις, θα πρέπει το πάθος σου για την επιτυχία να είναι μεγαλύτερο απο τον φόβο σου για την αποτυχία"

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Παρακαλώ διαβάστε τους όρους χρήσης.
  •  12-12-2005, 09:39 7829 σε απάντηση της 7746

    Απ: WinCE: sqlclient exception

    Δυστυχώς δεν φαίνεται να μετατρέπει τα δεδομένα που επιστρέφονται από την στήλη myvar σε unicode.
  •  15-12-2005, 15:17 7989 σε απάντηση της 7746

    Απ: WinCE: sqlclient exception

    Επίσης, όταν κάνεις μια καταχώρηση με insert ή Update σε πεδίο NVarchar, θα πρέπει πρίν το text να βάζεις ένα Ν για να δείχνεις ότι είναι Unicode
    πχ

    insert into mytable (col1, col2) values (12, N'Ελληνικά')

    Αλλιώς θα τα εισάγει σαν ????
    Simple Photography
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems